{
 "cells": [
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# Cross Section Interface\n",
    "\n",
    "The PyNE library offers a convenient interface for calculating and caching multigroup neutron cross sections, regardless of the data source used. These cross sections can be computed from various available data sources, which are stored in the `nuc_data.h5` file. The cross section interface remains consistent across all data sources, allowing users to easily switch between different cross section libraries.\n",
    "\n",
    "PyNE provides support for the following cross section formats:\n",
    "\n",
    "- ENDF file format (experimental)\n",
    "- ACE file format\n",
    "- EAF 175-group cross sections\n",
    "- CINDER 63-group cross sections\n",
    "- Two-point fast/thermal interpolation (using `simple_xs` data from KAERI)\n",
    "- Physical models\n",
    "- Null data\n",
    "\n",
    "This functionality can be accessed through the `xs` sub-package, which is further divided into the following modules:\n",
    "\n",
    "`models:` This module provides physical cross-section models and helper functions.\n",
    "\n",
    "`data_source:` Interfaces for accessing data sources of cross section libraries.\n",
    "\n",
    "`cache:` This module offers a cross-section cache that automates the extraction of cross-section data from supplied nuclear data sets.\n",
    "\n",
    "`channels:` This module offers a user-friendly interface for efficiently retrieving multigroup cross sections from the cross section cache and collapsing them to match the desired group structure. It also provides interfaces for higher-level functionalities, including cross-section computation for materials, fission energy spectra, metastable ratios, and more."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Data Sources\n",
    "\n",
    "Data sources are a type of class that offers a standardized interface for retrieving cross-section data from a particular data source. By default, this retrieval process is lazily evaluated, meaning that the data is fetched only when needed. Additionally, the data source object serves as an in-memory cache, allowing subsequent access to the raw data to be faster.\n",
    "\n",
    "To better understand the functioning of data sources, let's consider an example where we retrieve some known data. "
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### EAF Data Source"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {},
   "outputs": [],
   "source": [
    "from pyne.xs.data_source import EAFDataSource, SimpleDataSource, NullDataSource"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "array([3.40601e-04, 4.13527e-04, 4.52339e-04, 5.35260e-04, 7.79656e-04,\n",
       "       9.12824e-04, 1.05027e-03, 1.20057e-03, 1.33202e-03, 1.46200e-03,\n",
       "       1.60595e-03, 1.67206e-03, 1.76457e-03, 1.90211e-03, 2.03703e-03,\n",
       "       2.12614e-03, 2.15500e-03, 2.15923e-03, 2.17015e-03, 2.19708e-03,\n",
       "       2.24992e-03, 2.34009e-03, 2.47761e-03, 2.65621e-03, 2.80624e-03,\n",
       "       2.93429e-03, 3.18937e-03, 3.54963e-03, 3.99022e-03, 4.53866e-03,\n",
       "       5.21324e-03, 6.05776e-03, 7.06523e-03, 9.26177e-03, 1.27481e-02,\n",
       "       1.75162e-02, 2.23344e-02, 2.54474e-02, 2.88533e-02, 3.21686e-02,\n",
       "       3.59024e-02, 4.03127e-02, 4.31805e-02, 4.57085e-02, 4.57084e-02,\n",
       "       4.57112e-02, 4.87787e-02, 5.18315e-02, 5.62859e-02, 6.08943e-02,\n",
       "       6.55405e-02, 7.01358e-02, 7.41851e-02, 7.78783e-02, 8.13216e-02,\n",
       "       8.57563e-02, 8.88694e-02, 9.13386e-02, 9.53971e-02, 9.82263e-02,\n",
       "       1.00158e-01, 1.04962e-01, 1.08964e-01, 1.11877e-01, 1.14201e-01,\n",
       "       1.16384e-01, 1.19622e-01, 1.23457e-01, 1.27270e-01, 1.31726e-01,\n",
       "       1.35999e-01, 1.40273e-01, 1.44433e-01, 1.49346e-01, 1.55223e-01,\n",
       "       1.60902e-01, 1.69406e-01, 1.83582e-01, 1.92772e-01, 1.99107e-01,\n",
       "       2.07917e-01, 2.18980e-01, 2.24834e-01, 2.28807e-01, 2.28834e-01,\n",
       "       2.28851e-01, 2.32272e-01, 2.47665e-01, 2.60721e-01, 2.69491e-01,\n",
       "       2.77787e-01, 2.86525e-01, 2.95251e-01, 3.03786e-01, 3.12412e-01,\n",
       "       3.20788e-01, 3.28606e-01, 3.35689e-01, 3.45583e-01, 3.55016e-01,\n",
       "       3.64635e-01, 3.74740e-01, 3.83871e-01, 3.96374e-01, 4.20446e-01,\n",
       "       4.36756e-01, 4.49877e-01, 4.66706e-01, 4.97313e-01, 5.05926e-01,\n",
       "       5.32346e-01, 5.64841e-01, 5.50892e-01, 5.98351e-01, 6.17782e-01,\n",
       "       6.72248e-01, 6.96237e-01, 6.99460e-01, 7.01140e-01, 7.19296e-01,\n",
       "       7.33180e-01, 7.24884e-01, 7.69404e-01, 7.77250e-01, 8.32799e-01,\n",
       "       9.33925e-01, 1.01020e+00, 1.07310e+00, 1.21651e+00, 1.27445e+00,\n",
       "       1.30837e+00, 1.52976e+00, 1.62957e+00, 1.69051e+00, 1.74094e+00,\n",
       "       1.83856e+00, 1.95794e+00, 1.97871e+00, 2.60955e+00, 2.70133e+00,\n",
       "       2.82330e+00, 3.85308e+00, 4.03064e+00, 3.91338e+00, 4.59505e+00,\n",
       "       4.20223e+00, 5.61362e+00, 7.39548e+00, 8.33983e+00, 1.02707e+01,\n",
       "       1.11389e+01, 1.29232e+01, 8.42540e+00, 2.31086e+01, 1.80067e+01,\n",
       "       3.46571e+01, 1.94390e+01, 4.63772e+01, 1.76541e+01, 6.54149e+01,\n",
       "       3.43397e+01, 2.86602e+01, 2.89308e+01, 1.97519e+01, 1.58082e+01,\n",
       "       3.79141e+00, 1.33372e+01, 3.45039e+00, 1.42551e+01, 1.37460e+01,\n",
       "       7.05691e+00, 8.53781e+00, 1.27605e+01, 3.89028e+01, 9.05356e+01])"
      ]
     },
     "execution_count": 2,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "eds = EAFDataSource()\n",
    "# reaction returns a dictionary containing source group structure, energy values, \n",
    "# cross-section data, and interpolation data.\n",
    "gamma = eds.reaction('U235', 'gamma')\n",
    "gamma"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "The data source also provides a method to re-discretize this data to another group structure."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[2.52625773e-02 1.50668227e-01 3.94173552e-01 8.29069757e-01\n",
      " 2.08402584e+00 5.56199103e+00 1.73480167e+01 3.37415300e+01\n",
      " 1.01908466e+01 2.15494273e+01]\n",
      "[1.00000000e+01 1.58489319e+00 2.51188643e-01 3.98107171e-02\n",
      " 6.30957344e-03 1.00000000e-03 1.58489319e-04 2.51188643e-05\n",
      " 3.98107171e-06 6.30957344e-07 1.00000000e-07]\n"
     ]
    }
   ],
   "source": [
    "import numpy as np\n",
    "dst_e_g = np.logspace(1, -7, 11)\n",
    "\n",
    "# dst_group_struct is the group structure of the destination cross sections.\n",
    "eds.dst_group_struct = dst_e_g\n",
    "\n",
    "# discreatizes the reaction channel from the source group structure to that of the\n",
    "# destination, weighted by the group fluxes.\n",
    "gamma_c = eds.discretize('U235', 'gamma')\n",
    "print(gamma_c)\n",
    "print(dst_e_g)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Now let's plot it!"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "metadata": {},
   "outputs": [],
   "source": [
    "from pyne.bins import stair_step\n",
    "%matplotlib inline\n",
    "import matplotlib.pyplot as plt\n",
    "import matplotlib\n",
    "matplotlib.rc('font', family='serif', size=14)\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<matplotlib.legend.Legend at 0x7fa02e6bb650>"
      ]
     },
     "execution_count": 5,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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oCQNGjTI6R733nuvHn74YT377LPKysrSkCFDNGjQIP34449q3ry543Uvv/yyVq9erTVr1qh79+4qKirSwoULdeONN+r48eO66667PP4+omZh1RPYqVMnSdLBgwddzh05ckTFxcVKSUlRbGxsne9ltVrVuXNn9ejRo85tuWNr5gkVFHtnGxkAgP8sWrRI69ev1z333KNhw4ZJKhvKnTx5sgYOHKjHH39cmzZtcnndsWPHNG3aNEe5tCuvvLLG2rYbNmzQq6++qiuvvFL33nuvGjRooOjoaN1xxx267LLLPH4PQ4YMUf/+/WUYhpKTk5WWlqZTp07pX//6l9N1rVu31ty5cx2LM2NiYjR9+nSlpqZqzpw5Ht8f7gmrnsCBAwdqzpw52rZtm8u58mODBw/2yr3S0tKUlpam3NxcJSYm6svpAx1Dw96Ub7MrdV6619sFgEATGxWpjDlD/B1GjWKjIuv0+ldeeUWSdP3117ucGzlypNavX6/ly5erT58+Tueio6OdErfIyEjdfffd1d7rrbfeklSWMJ5uyJAheu2112odvySXBLK85/DAgQNOx//4xz9W+vpOnTpp69at+vnnn5WUlORRDKhZWCWBffv2VdeuXfXee+8pJyfHqVbgypUrFRER4ej+9ra46AZ1Gh4AgHBnGEZY/B799ttvJanS+rfl1S3Kr6moRYsWtZ4S9MMPP1R5r5YtW9aqrYpOT9xiYmIkSTabzen48ePH9dxzz+mf//ynDh48qNLSUklSTk6OJDmmacE3wmo42DAMLVmyxLFzSE5OjkzT1NKlS7VixQrNmDFD3bp183eYAADUmiflX8qTxqKioirP+SqWgoIC9e7dW3PmzNHdd9+tH3/8UVlZWcrKytLo0aM9vjfcF/RJ4JdffimLxSKLxaJ///vfkqQePXrIYrHo/vvvd7n+oosu0pYtW2QYhs4991wlJSXpueee07Jly6jvBwDwu44dO0pyHTqteKz8mro6++yzJUmHDh1yOVfZMW9KT0/Xt99+q8GDB+u2226j7IwfBH2/es+ePZWVlVWr13Ts2NExD8JXrFarrFar7HYWawAA3Dd27Fht375db731lst+9eV/u2699Vav3GvUqFF67rnntHr1aqcat5K0bp1vV2KX1y2srMfx9DI28I2g7wkMVGlpacrIyNCWLVv8HQoAIIjcfffduuKK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2MSJE7Vnzx796U9/cuqVrE08GzZs0Kuvvqorr7xS9957r6ONO+64Q59++ql27NhRp7jrgp5AIMTFRUcqLrrBr49If4cDoBYGDx7s9HzkyJF68803JUnDhg1zub5Xr16SpHfffVdSWe/dp59+qjPPPFM9e/Z0urZjx45KSUlxO5Z27dpJkmbMmKH169c7ehvPPPNM7dmzx3HdBx98oOzsbF1++eWOBLBco0aNlJ6ergsvvNCl/Z49ezoSQElq27atrrvuOp04cUJr165VixYtXIZkmzVrpnPOOUe7d+/WDz/84PZ7qczIkSM1cuRIx/Nnn31Wr7/+uoYPH+7UY1fbeN566y1J0pVXXulyzyFDhtQp5rqiJxAAEByi4sp62QJdVJzXmrJYLC7Hvv32W0nStGnTNHv2bKdzdrtd8fHx+vnnnyVJ//3vfyVJrVq1qrT9li1bau/evW7F0rNnTz3++OOaNWuWBg0apKSkJA0dOlQ333yzrrjiCke9wfL42rRpU2k7VZWlqey9StL333+v0tJSHTt2rNJrCgoKFB8frwMHDujss892673U5IsvvtCUKVN01llnadmyZU61FGsbT3ky2Lp1a5drW7b0b882SSAAIDgYhteGWYNFRETVA3Z/+ctfdNNNN1X7+vLkpap6f5UViq7OAw88oDvuuEPvvPOOVq9erddff13Lly/XoEGDtGbNGqcVxbWtMVjde5WkDh06OBJMXzp27JhGjRqlyMhIvfnmm455mJ7GU91nUNvvv7cxHBxC8m32KkuC+OPB6lMA8L6OHTtKKptDV5ktW7Y4hmfPOussSdLhw4cr/Z186JD7Paumaaq0tFQJCQm67bbb9M477+jAgQMaNmyY0tPTtXLlSqf4Dhw4UGk72dnZysnJcfu+55xzjiIiInTw4MFK38OxY8eUnp7ulZW2paWlGjNmjPbv3y+r1apu3brVOZ7y3snKvte1+f77Aj2BPuKPYtGBNuE/NaWpVt3Zy+//0gGAUHLrrbfq6aef1uuvv+6yuvTnn39W37599corr6hjx45q1qyZLr/8cm3YsEEbNmzQgAEDHNd+9913Ve6oUZlly5bp73//u95//33HsWbNmun3v/+91q5dq+PHj0uSrrjiClksFsdCkqZNmzquP3LkiNq0aaPXXnvNaf5ddZo2baprrrlG//jHP7RmzRpdc801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1I4dOzR69GhHAljupptu0iuvvCKr1aoXXnhBZ555phISEpSdne10XXZ2tnr37u21+AEgFJ2+aKTiQpHUeemUjgECgMdJYNOmTfX2229Xed40TY0cOdLT5t3mbgIoybGgo3v37i7nyo99+OGHjmMDBgzQtm3bHM8LCwu1a9cuPfzww1Xeo6ioyKn3MDe38uKqABDqKtYcPL1nsLx0TGU1CQHUD49/+pKTk9WvX79qr7ngggs8bd4ndu/eLUlq1aqVy7nmzZsrKipKmZmZKigoUGxsrB588EFdeeWV2rdvn9q1a6fFixfr7LPP1rBhw6q8x/z58516SQEAv/UMHsuzOXoE822V1w9klxGgfnicBO7cubPGa6orJO0PJ0+elCTFx8e7nDMMQ3FxccrJydHJkycVGxurXr166a9//auuv/56x44h//znPxUZWXXpg6lTp+q+++5zPM/NzVWbNm28/l4AINiU9Qz+9vuTXUYA//JpP/wVV1yhDz74wJe38LnRo0dr9OjRbl8fExPjsqIYAFCmqgUjFTFUDNSPOv+EnTp1Snv27Km0bMpXX31V1+a9qkmTJpKkvLw8l3OmaTreQ/l1AADvYpcRIHDUKQmcOnWqnnrqKRUXF3srHp8q393k4MGDLueOHDmi4uJipaSkKDY2ts73slqtslqt7DMMAKepuGAEgP94/FP4/PPP689//rNGjBihjh076qmnntKUKVMkSXv37tXf//53TZgwwWuBesPAgQM1Z84cpxW/5cqPDR482Cv3SktLU1pamnJzc13K0QBASLB5uXC+rUSxKtuJKv9UrnTa1nNeXTASFScx5xBhzuMk8IUXXtALL7zgKL784osvaubMmY7zw4cP1/vvv1/3CL2ob9++6tq1q9577z3l5OQ4JWcrV65URESE0tLS/BghAASRhWd7tbk4Sbsb/vrkWa827arNJdKE90kEEdY83jZu7969uu222xzPT98GaMSIEfr44489DswXDMPQkiVLHDuH5OTkyDRNLV26VCtWrNCMGTPUrVs3f4cJAIErKq4sgQp2+z+XitkCFOHN457AuLg4p23ioqKilJ+f79hSzW63Kysrq+4R1uDLL7/U8OHDJUnHjx+XJPXo0UORkZEaM2aMnnjiCafrL7roIm3ZskXTp0/Xueeeq9LSUqWkpGjZsmW65ZZbfB4vAAQ1wyjrQfNRAmWapsuikXybXX0fLys5tvHBy53KzNR6iNiW7/UeTCBYeZwENmvWTOvXr9fAgQMlSW3atJHVatUDDzwgSVq0aJHOOOMM70RZjZ49e9Y62ezYsaPeeustH0VUhoUhAEKWYUjRrvVWvdK0pLjTq2zZSlSgsnHi1Mc3O52ipiDgOY+HgwcNGqTrrrtO8+bNkySNGjVKf/zjH9WlSxedf/75uv/++3XllVd6LdBgk5aWpoyMDG3ZssXfoQBAUCuvLViZrZkndCzP5jIlCUDNPO4JvOuuu9SyZUslJSVJku644w6988472rhxo6SyHrq5c+d6J0oAQNiqrLZgxZqCqfPS1Tk5QWvu6aOICHoEAXcZppf/+bRz505FRUXp3HPPpXtecpSIycnJUUJCgr/DAYCQYJqmRi3e7LTzSPtm8VpzTx+nBb8ucwZtedJjLcu+nnbIZ8PagD+5m3t4PQmEM5JAAPAN0zSVb7Pr6kWbtPeo605QktQ5OUGr7uyluOhfk0GSQIQBd3OPOpds37hxo95880398MMPkqRzzjlHI0eOVJ8+feradFBjYQgA+JZhGIqPaaD19/XT1Ys2KeNwrss1GYdz1WXmut8WkPghTiBQedwTWFpaqokTJ2rZsmUuE3INw9D48eP1wgsvhP2QMD2BAOB7p5eWMU1p1OLNTolhxpwhilMRPYEIeT7vCVywYIGWLl2qoUOH6qqrrlLr1q1VVFSkgwcP6p133tHLL7+sc845Rw899JCntwAAwC2V7Ue8dlIfHcuzORaQAHDmcRL44osv6umnn9akSZNczt1333169tln9eyzz5IEAgD8oiwx/K2wdL7NLqlEcb8+N02T4WGENY+Hg5s2bapjx4457RpSkd1uV/PmzR27eIQrhoMBwH/ybSXq/Mg6x/NYFWp3wwmSpOuavKlX77pchuHBziNAAPP5cHBSUpJKS0urTAJLS0vVtGnlxT0BAKgP5YWmK5aSKbcnq2zRiMTOIwhPHieBo0eP1ssvv6zf//73lZ5fvny5rr76ao8DC3asDgYA/3MpNG3Lkxa6Xrc184QKiu2KjYp0XEvvIEKd28PBn376qdNzm82mBx54QBdccIGGDBmili3LVlsdPnxY69at0yeffCKr1aphw4Z5P+ogwnAwAASQCnUC86f8pHw1dCwc2TJ9kG57+UvHimJ6BxGsvF4sOiIiwuUHofylVR2PiIhQSUlJrQIPNSSBABBATisWna8YpzmDp8uYM8Rl1TEQ6Lw+JzA+Pl5TpkxxOwDTNPXkk0+6fT0AAPWtsjmD7ZvFO3YgKVtR7Hw9PYMIFW73BCYnJ+vw4cO1atyT14QaegIBIIBUsm1cZYWmyxeMnI4hYgQDd3OPypf2VmL9+vW1DsKT1wAAUJ/KC03/9ijrHazM1swTOpZnU76tRPm2Epcds4Bg4nGdQLiHnkAACCCV9ARW5vTewXybvdKdR+gZRCDyek/gjTfeWKeA6vr6YGO1WtW5c2f16NHD36EAAGrp9N7BM+OjK+0dLC8tAwQjt3sCW7ZsqUOHDnl8o7q+PljREwgAAcTNnsDKVOwdrNgzuGv2EMXHsIIYgcPrq4Ptdrv279/v0fwH0zSZNwEACGrlvYOnu3rRJq2/r58iIhgSRnBxOwk8cuSI2rVr5/GN4uPd/9cWAACBLDYqUp2TE5RxOFd7j+Zp4JOfaM09fdiHGEHF7STwsssuq9P/1LGxsR6/FgCAQGIYhtbc00cDn/xEe4/mae/RPPYhRtBxOwn8+OOPfRgGAADBJSLC0Pr7+unqRZscW81Jv5WRiYuOlETPIAIXM1kBAPBQRIShtZP6qKDY7rRYpGI5GXoGEahIAgEA4cmW75VmDElxkmKjTF3aNlZf/XTC6fyuzMPKP5Xr3RXEUXESSSXqiCQQABCeFp7t1eYMSSskqWElJ5/w6q2kNpdIE94nEUSduF0sGrVDsWgACEBRcWUJVLDb/7lU7J2eTIQvto3zMYpFA0CAMc16S6BKS00NW7RJ+47lSZLanRmvN+/spbhoDxeL2PJ/68GsZbFrhA+vF4sGACAkGEa9JU8RktbeP8RRSmb3Mbu6PLpJnZMTtOaePhSYhl8xHAwAgA+Vl5LpnPxbj0zG4VwNfPITlZYyGAf/8WkSeMUVV/iyeQAAgkJ5KZlds4eofbOyXsi9R/N09aJNbKsKv6nzcPCBAwd04MAB2Ww2l3NfffVVXZsHACAkGIah+JgGWn9fP8fwcMbhXEdhaYpKo755nARmZWVpxIgR+uKLL7wZDwAAIS0iomzLOcc2c78WlmaeIOqbx0ngpEmTtHPnTo0ePVrt2rVTTEyM03nTNPXkk0/WOUAAAEJNXHSkUlOaamvmb4Wly+cJrr+vH4kg6oXHJWIsFoveffdd9ezZs8prkpOTdfjwYY+DCwWUiAEAVMY0TRUU22Wa0tWLNmnv0bIyMp2TE7R2Up/Kh4ZtedJjLcu+pkQMquBu7uHxwpDIyMhqE0BJyszM9LR5AABCmmEYiotu4JgnWL5gpHyeIAtG4GseJ4Gpqan66aefqr1m5cqVnjYPAEDYKJ8nWC51XrqGPbuJEjLwKY+TwKeeekr33nuvtm3bVuU1U6dO9bT5oMe2cQCA2iifJ1iOWoLwNY/nBHbo0EGnTp3SsWPH1LBhQzVv3lwREc455f79+1VcXOyVQIMVcwIBAO4yTVP5NrvTHMH2zeK15p4+ZVvNFeczJxA18vmcwJ9++knx8fFq27atkpKSZBiGTNN0egAAAPdVrCVYsah0l5nrGB6G13lcIqZ58+bau3dvtdckJyd72jwAAGGrfKu5qxdtUsbhXEllw8PXL96sd/wcG0KHxz2Bf/jDH2q8ZubMmZ42DwBAWKtsq7k9Wbl+jgqhxOM5gXAPcwIBAHWVV1SiLjPXKVaF2t1wQtlB5gSiCu7mHnXeO/jf//63li9frm+//VaS1LFjR916663q3bt3XZsGAAAqWzncOTlBew8XOo7l20oUG2Wy3zA8VqeewKlTp+rxxx93WQRiGIYeeughPfbYY3UOMNjREwgA8Ia8ohKlzvyHoyewU+HL6pKSrFV39iIRhBOf9wS+8cYbWrBggQYOHKiRI0eqVatWkqQDBw7ozTff1IIFC3TRRRdp1KhRnt4CAAD8Ki46Uhe3bSr9/NuxrZknlG+zKz6mzgN7CEMe9wT27dtXI0eO1L333lvp+WeeeUZvvfWWPv300zoFGOzoCQQAeItZdErG/LJOl06FL6tADdW+WbzW39dPERH0BqKMz+sEfvfdd7r77rurPH/33Xc75gkCAIC6qzjs29FS9sd979E8DXzyE+UVlSjfVkKdXrjN4yRQkiIjI6s9xxwFAAB84607e7kUlO78yDqNWryZRBBu8TgJTE5O1vvvv1/l+ffee08Wi8XT5gEAQDXKC0p3TnYe7tuaeULH8mz0CqJGHs8kHTNmjG644QZNmjRJI0aMUOvWrSWVLQx56623tGjRIs2aNctbcQIAgNOUF5QuKLYr32ZX6rx0SfrtvylNWT2MKnm8MKSkpERDhw7VRx995PI/l2mauuKKK7R27dpqh4zDAQtDAABeY8uTHmtZ9vVpxaJN09SoxZu1NfOE00t2zR7C6uEw4/OFIQ0aNND777+vhQsX6sILL1TDhg3VsGFDdevWTU899RQJIAAA9cgwDK26s5cy5gzR1hmDHMevXrRJpaUMC8MV28b5iNVqldVqld1u13fffUdPIACg7qrpCazINE0Ne3aTMg6X7TXcOTlBayf1YVg4TPi8J9Ad8+fP92XzAS0tLU0ZGRnasmWLv0MBAIQZwzC05p4+jtXDGYdzWSwCFz5NAhctWuTL5gEAQBUiIsoSwXKp89IpIQMnbs8UnTt3rk6ePKknnnhCktShQ4caX3PkyBHPIwMAAHUSFx2p1JSmTotFtmaeUEGxXXHRLBYJd27/H/DMM88oLy9P8+fPV3R0tH766Se1adPGl7EBAIA6KF8scnoJmXybXbFRbOoQ7txOAj/++GMVFBQoOjpaktS8eXPt3bu32tckJyfXLToAAFAnhmG49PqlzkunhiDcTwLPP/98p+e///3va3yNO9cAAADfi41yHhou31nkzPhoEsEw5XGJmOLiYkVFRVV6bsOGDcrPz9ewYcPqFFwooFg0AMBr3CwRUxXTNHUsz+YYFpbYVSQU+bxETEpKSpXntm/frltvvVUPPvigp80DAAAvMwxDZ8ZHKzWlqePY1swTyrfZ/RgV/MXjnsDk5GQdPny4yvPZ2dnq2bOnMjMzPQ4uFNATCADwmoo9gVN+kKLjPGqmvEew7+MbJEntzozX2nv6KCKiHnoDo+Ikeh19yt3cw+P14TV1Gzdu3FgFBQWeNg8AAKqz8GyPX2pIaiZpd8NfD+RJ+pMXYnJHm0ukCe+TCAaAWiWBAwYMcHx9/Phxp+cVFRcX64cfftBZZ51Vt+gAAMBvouLKkqj9n/s7Es/t/1wqzq/1fEZ4X62SwI8//rja5+Xi4uJ04YUX6rnnnvM0LgAAcDrDKOtFK873WpN5RSVKfbRsoUi7M+P15p29FBftgxqCtvw69V7C+2qVBJaWljq+rmlOIAAA8AHD8GovWlyUqfbJSco4nKvdx+zq8ugmdU5O0Jr6miMIv/F4dfAf/vAHb8YBAAD8wDDK9hjunPzbAoKMw7ka+OQnKi1lj+FQ5nES+PDDD3szDgAA4CcREYbWTuqjXbOHqH2zsl7GvUfzdPWiTfKwiAiCgMdJ4HfffacJEyZowoQJ2rVrl+P44cOHNXz4cO3YscMrAQIAAN8zDEPxMQ20/r5+jkQw43CujuXZSARDlMdJ4N/+9jctX75cdrvdqQZN48aNFRkZqcsuu0xff/21N2IEAAD1JCKibHi4XOq8dA17dhNDwyHI4yTw008/1fPPP69ly5apTZs2juONGjXSO++8o5kzZ2rWrFneiNHvTp06pf/93/9lSx0AQFiIi4502lWEOYKhyeMk8NChQ7r99turPD9p0iR99dVXnjYfMHbv3q0BAwbo5MmT/g4FAIB6YRiGVt3Zy2WOIIlgaPE4CbTb7YqIqPrlDRo0kM1m87T5gFFQUKC3335bw4YN83coAADUm8rmCJYngnlFJcwTDAEeJ4FNmjTRF198UeX5zZs3q2nTplWeDxYXX3yxWrdu7e8wAADwi4gIwyUR7DJzHfMEQ4DHSeCoUaN03XXX6e9//7t++eUXx/Hjx4/rhRde0MiRI3XDDTfUKbidO3eqd+/eMgxD+/btq/baPXv2aOTIkbJYLEpKSlKPHj20YsWKOt0fAAD8lghSSzC0eJwEPvTQQ0pKStKYMWPUpEkTNW3aVPHx8WrevLnuvPNOJSUl6aGHHvKo7cLCQk2fPl39+vXT999/X+P127dvV8+ePWW327Vnzx5lZ2crLS1NY8eODZnFKQAA+FNVtQTLh4fzbQwRBxuPk8D4+Hht2rRJd999t5o2baqcnBwVFBTojDPO0KRJk7Rx40bFxcV51PbkyZO1a9cu7dixQ126dKn2WtM0NX78eEnS0qVL1aRJExmGoXHjxmnMmDGaO3euU6maP/7xjzIMo9oHAABwVdU8wS4z16nzI+s0avFmEsEg4nESKJWVg3nmmWd09OhRZWdnKzs7W0eOHNFTTz2lRo0aedzu1KlTtXr1arfm4m3cuFE7duzQVVddpcTERKdzN910k0pLS2W1Wh3Hpk2bpv3791f7AAAAVatseFiStmaeUL7N7qeoUFsNvNVQ8+bNvdWUUlJS3L52/fr1kqTu3bu7nCs/9uGHHzqOJSQkOBW39raioiIVFRU5nufm5vrsXgAA+Ev58HBBsV35NrtS56VLkq5etElr7umjuOhIRtcCXJ16AgsLC7Vw4UJddtlljmHbr7/+Wk888YROnTrllQBrsnv3bklSq1atXM41b95cUVFRyszMVEFBQb3EM3/+fCUmJjoeFQtpAwAQSgzDUFx0A50ZH+3oFWT1cPDwOAk8deqULr30Uj344IPatGmTYxi1QYMGevLJJ9W/f/96KbBcfo/4+HiXc4ZhOOYlehrLkSNH1L9/f/3pT3+SJPXv31/3339/lddPnTpVOTk5jgfDywCAUGcYZVvNnb56+OpFm5gjGMA8Hg5+7LHHdODAAT333HO65JJLHMWUzz//fP3444+68cYbtWDBAs2fP99rwfpD8+bN9fHHH7t9fUxMjGJiYnwXEAAAAah8eDjfZtfVizZp79E8ZRzOVb7NrvgYr80+gxd53BP49ttv64033tAf/vAHXXzxxU7j/jExMbJarVq9erU3YqxWkyZNJEl5eXku50zTVH5+vtN1AADAN8pXD6+5p4/j2NWLGBYOVB4ngUePHlW/fv2qPN+yZUunItK+0qlTJ0nSwYMHXc4dOXJExcXFSklJUWxsrM9jqchqtapz587q0aNHvd4XAAB/i4uOdJojWF5LEIHF4yTQNM1qF1ucOHGiXvYOHjhwoCRp27ZtLufKjw0ePNjncZwuLS1NGRkZ2rJlS73fGwAAfyqfI1ixlmDqo+l+jgqn8zgJTE1N1YwZMyo9V1JSovvvv189e/b0ODB39e3bV127dtV7772nnJwcp3MrV65URESE0tLSfB4HAAD4TVW1BBE4PJ6p+dBDD2nw4MH66KOPNHToUOXn52vBggXav3+/Vq9erezsbG3YsMGbsVbKMAwtWbJEl112mcaPH68lS5YoISFBy5Yt04oVKzRjxgx169bN53EAAABn5YtFjuXZ1HfeGsdx0zRFBUH/8zgJHDBggP72t7/p7rvv1o4dOySV7cZhmqYaNmyoF198UX369Kmhlcp9+eWXGj58uCTp+PHjkqQePXooMjJSY8aM0RNPPOF0/UUXXaQtW7Zo+vTpOvfcc1VaWqqUlBQtW7ZMt9xyi6dvEQAA1JFhGDozPlodLQnSybJjZSuG/RoWJBlmHQv4HD58WKtWrdK3334rSerYsaNGjRoli8XilQCDldVqldVqld1u13fffaecnByf7lQCAEAgy/slR/FPtJUkXdfkTb197yB2FPGR3NxcJSYm1ph71DkJRPXc/SAAAAhlZtEpGfPLdvfqVPiyNs64WmfGR5MI+oC7uUedto0DAABwx+nJXuq8dI1avJkdRfzI7STw2LFjeu+99/Tee+/pm2++cTp3/PhxjR8/XsnJyUpISNCQIUP09ddfeztWAAAQQrZmnlC+ze7vMMKW20ngypUrdc0112j48OFasWKF07lrrrlGy5cvV3Z2tho2bKgPP/xQ/fv31759+7wdLwAACHIbH7zc8TW9gf7jdhK4efNmde3aVXv37tWCBQscx9euXavNmzerWbNm+uabb/Tzzz/rwIEDOvfcc7Vw4UKfBB0M2DEEAIDKnRkf7agfmHE4VwXF9Ab6g9tJ4I4dO/T888+rTZs2Tsdfe+01GYahKVOm6Pzzz5dUtmXcM888o48++si70QYRdgwBAKByhmFo1Z29HM/pCPQPt5PAEydO6He/+53TsdLSUr3//vuSpJtuusnp3CWXXKJDhw55IUQAABBqKq4TYUjYP9xOAktKXDd+3rx5s06cOKELLrhArVu3djpnGIYaNmxY9wgBAEDIiY2KZEjYz2pVIiY3N9fp+cqVK2UYhq6++mqXawsLCxUVFVW36AAAQEhiSNj/3E4CL774YqeFHv/973+1dOlSSdLo0aNdrv/HP/6h5OTkukcIAABCEkPC/uX23sF33HGHRowYoY8++kgWi0Xr169Xfn6+rrzySl1wwQWO606ePKmPPvpIkydP1g033OCToINBxW3jAACAq/Ih4YzDuY4h4bhot1MT1JHbPYHXXnutZs2apS+//FJvv/22cnJy1L9/fy1ZssTpuvbt22vkyJHKzs7WoEGDvB5wsGB1MAAA1Tt9SDjfZqc3sB7VKt1+5JFHdPfdd+v7779Xy5YtXcrFSNI333yj0tJSSVKrVq28EyUAAAhJFYeEU+elKzWlqVbd2Ys9hetBrftczzjjDJdSMRVVlhgCAABUJjYqUqkpTbU184Sksq3kGBauH7VaHQwAAOBN5UPCW2f8NoWMEeH6QRIIAAD8yjAMxUVHOp6zUrh+kAQCAAC/O714dL6N6hq+RhLoI1arVZ07d1aPHj38HQoAAAHv9JXC9Ab6Hkmgj1AiBgCA2omLZiu5+kQSCAAAAgJbydUvkkAAABAw2Equ/nicBGZlZWn58uX6xz/+4Tj25ZdfasCAAerWrZuefvppb8QHAADCCAtE6o/HSeALL7ygiRMn6l//+pckKScnR9dcc40+/vhj7d+/X/fff7/eeOMNrwUKAABCHwtE6o/HSeC//vUvLVu2TIsXL5YkrVixQkeOHNFf//pXHTt2TM8//7ysVqvXAgUAAOGBBSL1w+MkcP/+/brpppscz99++221adNG//u//ytJuv322/Xjjz/WPUIAABBWWCBSPzxOAktLSx1f5+TkaOPGjbr++usdxyIjI52uAQAAcBcLRHzP4ySwSZMmysjIkCQtX75cJSUlGjFihOP80aNH1bBhw7pHGKQoFg0AgOdOXyDCkLD3eZwE3nzzzbriiis0cuRIPfjgg+rYsaP69OkjSfr55581adIkXXTRRV4LNNhQLBoAAM+dPiQM72vg6QunTJmi3bt365133lGHDh306quvSpLsdrssFosk6bXXXvNOlAAAIOxUHBJmNNj7PE4CY2JiHIlfRcwFBAAA3jZq8WatndRHRsXMEHXCjiEAACAgMS/Qt9gxBAAABCTmBfoWO4YAAICAxeiv77BjCAAACAosDvEudgwBAABBgaLR3sWOIQAAIGCxOMR32DEEAAAELBaH+I7HdQLLdwy55JJLtHbtWpcdQyZPnhzWO4ZYrVZZrVbZ7fyLBQCAuqi4OCTfZldsVCT1Ar2AHUN8JC0tTWlpacrNzVViYqK/wwEAICSkzktXakpTrbqzF4lgHbFjCAAACGixUZFKTWmqrZknJElbM0+ooNiuuGiP0xiIHUMAAECAK58XuHXGIH+HElLqnAS+9tprGjp0qNq3b6/27dvryiuv1N///ndvxAYAACCpLBGMi470dxghxeN+VNM0NWbMGL3++utONXsyMzP1wQcf6J///KdWrFjhlSABAEAIseV7+LoSxapQkmQW5akOaUzdRMWFxFYmHn/3/vrXv+rtt9/WhAkTNHLkSLVq1UqSdODAAb355pt69dVXddlll+mOO+7wWrAAACAELDzbo5fFSdpdXn3uCa9FU3vTDknR8X4MwDs8TgJfeuklLVu2TKNHj3Y6fv7552vo0KEaPHiwFi5cSBIIAADKes/aXCLt/9zfkeBXhunh/isWi0VZWVnVXtOiRQtlZ2d7FFioKC8Rk5OTo4SEBH+HAwCA/5imVOzhUPCv8opKlPpouiRp24xB/lkhHODDwe7mHnWaE2iaZpU1ekpLS9nfDwAA/MYw6jyMaqhEBfp1TDg6XqJMjMc8Xh3cvn17vfLKK1Wef+WVV3TWWWd52jwAAEC16GuqG4/T54kTJ2rixIn64IMPNGLECLVu3VpS2cKQt956S6tWrdLf/vY3rwUKAABQ0ajFm7V2Uh92DvFQnZLATZs2afny5Vq5cqXTOdM0NWHCBI0bN66u8QEAADjERkWqc3KCMg7nKuNwLjuH1EGdvmtLly7V8OHD9eqrr+rbb7+VJHXs2FFjx47V//zP/3glQAAAgHLlu4d0mbnO36EEPY+TwJ9++kmSNGTIEI0YMcJrAQEAAFSH0V/v8HhhSLt27XT22WfrzTff9GY8AAAAqAce9wRGRERo69atuvDCC70ZT8iwWq2yWq2y2+3+DgUAAMCFxz2Bbdu2rTEBDOc6gWlpacrIyNCWLVv8HQoAAIALj5PAfv366fPPq9/6pXw/YQAAAAQWj5PAP//5z3r00Uf16quvVrl9XDj3BAIAAN/Lt9mVbysh5/CAx3MCW7RoIUl67733vBYMAABAbaTOK9tHODWlqVbd2YvC0bXgcRLYoEED9e7du8rzpmnWOFwMAABQW7FRkUpNaaqtmSccx7ZmnqBwdC15/J0644wztGHDhmqvSU5O9rR5AACASpUXjC4otivfZnf0BqJ2PE4C58+fX+M1L774oqfNAwAAVMkwDHr96sjjhSHu7As8bNgwT5sHAACAD9UqhV65cqWKi4slSUOHDlVSUpLLNU8//bRGjBihtm3beidCAAAAeJ3bPYH/+c9/NGbMGI0fP1733ntvlWVhXnvtNXXs2FHr16/3WpAAAADwLreTwH/+858yDENz585VVlZWlbuFrFy5UldddZWuvfZa7d+/32uBAgAAwHvcTgI3bdqkyZMna9q0aYqJianyurPOOktvvvmmhgwZoueee84rQQIAAMC73E4Cd+3apUmTJrnd8MyZM/XBBx94FBQAAAB8y+0kMCcnRykpKW43fMEFFyg7O9ujoAAAAOBbbieBjRo1qnXjbN0CAAAQmNxOAhMTE3X48GG3Gz58+LASEhI8CgoAAKC28m12mabp7zCChttJ4KBBg2S1Wt1u2Gq1atCgQR4FBQAAUFup89I1avFmEkE3uV0s+u6779YFF1yg5ORkpaWlVXvtokWL9NRTT+k///lPnQMEAACoSmxUpFJTmmpr5glJ0tbMEyootrOlnBvc/g6dc845euyxx3TPPffIarXquuuuU9euXXXGGWdIko4fP64dO3bonXfe0bfffqvnnntOHTp08Fng9cE0Tb3yyitatmyZTNNUbm6uunbtqgULFqhZs2b+Dg8AgLBnGIZW3dlLx/JsSp2X7u9wgoph1rLP1Gq16oEHHlBRUZHLOdM0FR8fr2eeeUYTJkzwWpD+curUKTVt2lSbNm3S7373OxUVFemqq66SaZr66KOP3GojNzdXiYmJysnJYY4kAAA+km8rUedH1kmSMuYMCeueQHdzj1p/h9LS0nT99dfrxRdf1KeffqqDBw/KMAy1bNlSl19+uSZMmKAWLVrUKfhAERkZqZtvvlm/+93vJEkxMTG66667NGrUKB05ckTNmzf3c4QAAACe8ShNtlgsmjFjhrdjCTixsbFatmyZ07GGDRtKkgoLC/0REgAAgFe4vTrYH3bu3KnevXvLMAzt27ev2mv37NmjkSNHymKxKCkpST169NCKFSu8HtPmzZt1ySWXqE2bNl5vGwAAoL4EZBJYWFio6dOnq1+/fvr+++9rvH779u3q2bOn7Ha79uzZo+zsbKWlpWns2LGaNWuW1+I6duyYXnrpJS1atMhrbQIAAPhDQCaBkydP1q5du7Rjxw516dKl2mtN09T48eMlSUuXLlWTJk1kGIbGjRunMWPGaO7cufr6668d1//xj3+UYRjVPipjt9s1ZswYzZs3T6mpqV57rwAAAP4QkEtnpk6d6vY+xRs3btSOHTs0evRoJSYmOp276aab9Morr8hqteqFF16QJE2bNk133313rWO644471LdvX02cOLHa64qKipxWTufm5tb6XgAAAL4WkEmguwmgJK1fv16S1L17d5dz5cc+/PBDx7GEhIRal2p54IEHlJCQoOnTp0uS0tPT1aFDh0rrIM6fP1+zZ8+uVfsAAAD1LSCHg2tj9+7dkqRWrVq5nGvevLmioqKUmZmpgoICj9qfP3++Nm3apJtuuklbt27V1q1b9cYbb+inn36q9PqpU6cqJyfH8di/f79H9wUAAJ7Jt9mVbyth+7gaBGRPYG2cPHlSkhQfH+9yzjAMxcXFKScnRydPnlRsbGyt2j548KCmTZsmSerZs6fTuZtvvrnS18TExCgmJqZW9wEAAN5TvnNIakpTrbqzV5Xz/cNd0CeBvtSqVSv+FQEAQBA4fQ9hiX2EaxL035UmTZpIkvLy8lzOmaap/Px8p+sAAEDoKd9DuKDYrnybnX2E3RD0cwI7deokqWzo9nRHjhxRcXGxUlJSaj0UXFdWq1WdO3dWjx496vW+AACEK8MwFBfdQHHRkf4OJSgEfRI4cOBASdK2bdtczpUfGzx4cL3GJJXtsZyRkaEtW7bU+70BAABqEvRJYN++fdW1a1e99957ysnJcTq3cuVKRUREKC0tzU/RAQAABKagTwINw9CSJUscO4fk5OTINE0tXbpUK1as0IwZM9StWzd/hwkAABBQAjIJ/PLLL2WxWGSxWPTvf/9bktSjRw9ZLBbdf//9LtdfdNFF2rJliwzD0LnnnqukpCQ999xzWrZsmd8KNzMnEAAABDLDpAaKT+Xm5ioxMVE5OTm13qkEAADUXr6tRJ0fWSdJypgzJOxKxLibewRkTyAAAAB8iyQQAACELMY7q0YSCAAAQtaoxZvZ/asKJIE+wsIQAAD8IzYqUp2Ty+bCZRzOVUGx3c8RBSaSQB+hWDQAAP5RvoUcqkcSCAAAQo5h+DuCwEcSCAAAEIZIAgEAQEjLt9lZHFIJkkAAABDSUuels0q4EiSBPsLqYAAA/Cc2KlKpKU0dz7dmnmCV8GnYNs7H2DYOAAD/ME1Tx/JsSp2XLil8tpBj2zgAABDWDMNQXHSkv8MIWCSBAAAAYYgkEAAAhAUmwDkjCQQAAGGBFcLOSAIBAEDIYh/hqpEEAgCAkMU+wlUjCfQR6gQCABAY2Ee4ciSBPpKWlqaMjAxt2bLF36EAAIBfMSXwNySBAAAgbLA45DckgQAAIKSxOKRyJIEAACCksTikciSBAAAg5LE4xBVJIAAACCv5NjvzAkUSCAAAwkzqvHQWiIgk0GeoEwgAQOCIjYpUakpTx/OtmSfCfoGIYYZ7Guxjubm5SkxMVE5OjhISEvwdDgAAYcs0TR3Lsyl1XrokKWPOEMVFN/BzVN7nbu5BTyAAAAgLhmEoLjrS32EEDJJAAAAQlsJ9LJQkEAAAhKVwXxxCEggAAMIGu4f8hiQQAACEDXYP+Q1JIAAACCsVdw8J49FgkkAAABC+wnleIEkgAAAIK8wLLEMSCAAAwgrzAsuQBAIAgLDDvECSQJ9h72AAAIJDuM4LJAn0kbS0NGVkZGjLli3+DgUAAJyGeYEkgQAAIAydPi8w32YPu95AkkAAABCWKs4LTJ2XHnbDwiSBAAAgLMVGRSo1panj+dbME2E1LEwSCAAAwlL5kPDWGYMcx8KoI5AkEAAAhC/DMBQXHel4Hk5DwiSBAAAgrJ2+UjjfFh5DwiSBAAAgrJ2+UjhcegNJAgEAQNiLi3buDTyWZwv5RJAkEAAAhL3TewNT56Vr2LOblFdUErLJIEkgAACAynoDK5aMyTicqy4z1zmSwXxb2SNUkkLDDJV3EqByc3OVmJionJwcJSQk+DscAABQDdM0lW+za9Tizco4nFvpNakpTbXqzl4yKlabDiDu5h70BAIAAPzKMAzFxzTQ2kl9tGv2EMc8wYq2Zp4IiRXE9AT6GD2BAAAEL9M0HbuI5NvsSp2XLknqnJygtZP6BGRvID2BAAAAdVRWTLqB4qIb6Mz4aKcVxMG+xRxJoI9YrVZ17txZPXr08HcoAADAC05fQZxvswf1IhGGg32M4WAAAEJHvq1EnR9Z53geiItEGA4GAADwstgo5zIywbxIhCQQAADATeVDwltnDHIcC9Zt5kgCAQAAasEwjJBYJEISCAAAUEunLxIJwo5AkkAAAABPVFwLEoxDwiSBAAAAHoiNigzqIWGSQAAAAA+cPiQcbEgCAQAAPBRA5QFrjSQQAADAC4JsSiBJIAAAgDcE2+IQkkAAAAAPBfPiEJJAAAAADwXz4hCSQAAAgDqouDgkiEaDSQIBAAC8JZjmBZIEAgAA1EGwzgskCQQAAKiDYJ0X2MDfAQS61atXa/HixSopKVFeXp5KS0s1e/ZsDR061N+hAQCAABGM8wLpCazB4sWLNX78eKWnp2vz5s0aO3asrr32Wh05csTfoQEAgAAULPMCSQJr8Oijj2rUqFGO55dddpmKiop08OBBP0YFAAACSTDOCyQJrEH37t0VEVH2bSooKNCiRYt0+eWX64ILLvBzZAAAIFAE47zAgE4Cd+7cqd69e8swDO3bt6/aa/fs2aORI0fKYrEoKSlJPXr00IoVK7wWy/jx45WUlKRDhw7p7bffVmRkpNfaBgAAwa/ivMBgEJBJYGFhoaZPn65+/frp+++/r/H67du3q2fPnrLb7dqzZ4+ys7OVlpamsWPHatasWV6JacmSJTp27Jjatm2rvn37Ki8vzyvtAgAA+ENAJoGTJ0/Wrl27tGPHDnXp0qXaa03T1Pjx4yVJS5cuVZMmTWQYhsaNG6cxY8Zo7ty5+vrrrx3X//GPf5RhGNU+qhIdHa0nnnhC+/bt05IlS7zyXgEAAPwhIJPAqVOnavXq1WrdunWN127cuFE7duzQVVddpcTERKdzN910k0pLS2W1Wh3Hpk2bpv3791f7qMhmszk9j42NVdu2bbV79+46vEMAAAD/Csg6gSkpKW5fu379ekllCzhOV37sww8/dBxLSEhQQkKC2+13795d//nPfxzPS0tLlZ2dreTk5EqvLyoqUlFRkeN5bm6u2/cCAACoLwHZE1gb5T1yrVq1cjnXvHlzRUVFKTMzUwUFBR61v2vXLr3//vuO50899ZTy8/M1evToSq+fP3++EhMTHY82bdp4dF8AAABfCvok8OTJk5Kk+Ph4l3OGYSguLs7putp6+umnNWvWLPXt21e9evXSmjVr9MEHH+icc86p9PqpU6cqJyfH8Th9eBkAAIS+IKgVHZjDwYFk0qRJmjRpktvXx8TEKCYmxocRAQCAQDdq8WatndSn2gWn/hb0PYFNmjSRpEpLtpimqfz8fKfrAAAAfCHYdg0J+iSwU6dOklTpNm5HjhxRcXGxUlJSFBsbW69xWa1Wde7cWT169KjX+wIAAP8Itl1Dgj4JHDhwoCRp27ZtLufKjw0ePLheY5KktLQ0ZWRkaMuWLfV+bwAA4B8BPPrrIuiTwL59+6pr16567733lJOT43Ru5cqVioiIUFpamp+iAwAACExBnwQahqElS5Y4dg7JycmRaZpaunSpVqxYoRkzZqhbt27+DhMAACCgBGQS+OWXX8pischisejf//63JKlHjx6yWCy6//77Xa6/6KKLtGXLFhmGoXPPPVdJSUl67rnntGzZMs2ePbu+wwcAAAj4MjGGaQZ6iMHJarXKarXKbrfru+++U05OTq12KgEAAMEn31aizo+skyR1Tk7wS5mY3NxcJSYm1ph7BGRPYChgYQgAAOEnmMrEkAQCAAB4STCViSEJBAAA8KJgKRNDEggAABCGSAJ9hB1DAABAICMJ9BEWhgAAgEBGEggAABCGSAIBAADCEEkgAABAGCIJBAAACEMkgT7C6mAAABDISAJ9hNXBAAAgkJEEAgAA+Ei+zS7TNP0dRqVIAgEAAHwkdV66Ri3eHJCJIEkgAACAF8VGRSo1panj+dbMEyootvsxosqRBAIAAHiRYRhadWcvbZ0xyN+hVIskEAAAwMsMw1BcdKS/w6gWSaCPUCIGAAAEMpJAH6FEDAAACGQkgQAAAGGIJBAAACAMkQQCAACEIZJAAAAAHwvAWtEkgQAAAL4WiLuGkAQCAAD4QGxUpDonJ0iSMg7nBtyuISSBAAAAPlC+c0igIgn0EYpFAwAAw/B3BFUjCfQRikUDAIBARhIIAAAQhkgCAQAAwlADfwcAAAAQDvJtv60Ojo2KlOHnCYMkgQAAAPUgdV664+uMOUMUF+3fNIzhYAAAAB+JjYpUakpTf4dRKXoCAQAAfKS8VuDphaJjoyL9FNFvSAIBAAB8yDAMvw/9VobhYAAAgDBEEggAABCGSAJ9hG3jAABAIDNM0zT9HUQoy83NVWJionJycpSQkODvcAAAQIhzN/egJxAAACAMkQQCAACEIZJAAACAMEQSCAAAEIZIAgEAAMIQSSAAAEAYIgkEAAAIQySBAAAAYYgkEAAAIAyRBAIAAIQhkkAAAIAwRBIIAAAQhkgCAQAAwhBJIAAAQBgiCfQRq9Wqzp07q0ePHv4OBQAAwIVhmqbp7yBCWW5urhITE5WTk6OEhAR/hwMAAEKcu7kHPYEAAABhqIG/Awh15R2tubm5fo4EAACEg/Kco6bBXpJAH/vll18kSW3atPFzJAAAIJz88ssvSkxMrPI8cwJ9rLS0VIcOHVLjxo1lGIa/wwl6ubm5atOmjfbv388cyxDDZxu6+GxDF59tYDJNU7/88otatmypiIiqZ/7RE+hjERERat26tb/DCDkJCQn8wglRfLahi882dPHZBp7qegDLsTAEAAAgDJEEAgAAhCGSQASVmJgYzZw5UzExMf4OBV7GZxu6+GxDF59tcGNhCAAAQBiiJxAAACAMkQQCAACEIZJAAACAMEQSiLDz3//+V9ddd50uv/xyde7cWZdeeqkyMjL8HRa86MEHH5RhGNq3b5+/Q0Edmaap5cuXa+DAgRowYIBSU1N1++236+jRo/4ODbX0+uuvq3v37urTp4+GDBmin376yd8hhT2SQISVI0eOaNCgQZoyZYo2bNigHTt2yDRNfhmFkF27dmnp0qX+DgNekpeXp9tvv12PPfaYPvroI3322Wfat2+fbrjhBn+HhlrYvHmzfv/73+vNN9/Upk2bNGTIEF199dWy2+3+Di2skQQirCxYsECXXnqpLr30UklSVFSUlixZou7du/s5MnjLpEmTNH36dH+HAS+JjIzUzTffrN/97neSykqS3HXXXdqwYYOOHDni5+jgrgULFmj48OFq3769JOmuu+7SDz/8oLVr1/o5svBGEoiw8vbbb6tv375Ox8477zw1b97cTxHBm5YvX67zzz9fXbt29Xco8JLY2FgtW7bM6VjDhg0lSYWFhf4ICR7YsGGDUlNTHc9jY2PVuXNnrV+/3o9RgSQQ9Wbnzp3q3bu3W3O19uzZo5EjR8pisSgpKUk9evTQihUr6nT/vLw87d27VzabTTfeeKMuvfRSXXXVVdqwYUOd2oX/P1tJOnnypJ544gnNmTOnzm3hN4Hw2Z5u8+bNuuSSS9SmTRuvtw3vf+bHjh1Tbm6uWrRo4XTcYrFo79693g4ftUASCJ8rLCzU9OnT1a9fP33//fc1Xr99+3b17NlTdrtde/bsUXZ2ttLS0jR27FjNmjXL4zhOnjwpSZo5c6amTp2qzz77TPfcc48GDx6sL774wuN2w1mgfLaSNG3aND344INubZqOmgXSZ1vRsWPH9NJLL2nRokVeaxNlfPWZ5+fnS5LLriLR0dGOc/ATE/CxO+64w/yf//kfc//+/Wa/fv1MSebevXsrvba0tNTs2rWr2bhxY/PkyZNO52699VYzIiLC3L59u+PYQw89ZEqq9lHu8OHDpiRz7NixTu327t3bHDNmjNfebzgJlM9269at5oABAxzPN2zYUG0sqFmgfLYVlZSUmEOGDDFfeOEFb71NVOCrz/zo0aOmJHPlypVO1w0bNsy85pprfPFW4CZ6AuFzU6dO1erVq9W6desar924caN27Nihq666yqVH56abblJpaamsVqvj2LRp07R///5qH+WaN2+u6OhotWrVyqndtm3bMiThoUD5bN977z2dPHlS/fv3V//+/TV58mRJ0o033qj+/fuzAtEDgfLZVnTHHXeob9++mjhxYt3eHCrlq8/8zDPPVEJCgrKzs52uy87OdiwUgX808HcACH0pKSluX1s+Sbiy1brlxz788EPHsYSEBCUkJLjVdmRkpHr37q3Dhw87Hc/Ozlbbtm3djhG/CZTP9uGHH9bDDz/seP7xxx/r8ssv19///ne1a9fO7Rjxm0D5bMs98MADSkhIcKz8Tk9PV4cOHdShQ4datYOq+fIzHzBggLZt2+Z4XlhYqF27djn93KL+0ROIgLJ7925Jcumtk8p68qKiopSZmamCggKP2n/wwQf1j3/8w1EXcMeOHdq0aZP+8Ic/eB403OLrzxb+4+vPdv78+dq0aZNuuukmbd26VVu3btUbb7xBfU8/qu1n/uCDD+rdd991LDRZvHixzj77bA0bNqzeYoYregIRUMoXb8THx7ucMwxDcXFxysnJ0cmTJxUbG1vr9q+88ko98cQTGj58uBo3bqzS0lK99dZbLmVj4H2+/mzLjR07Vt98842ksuHgyy67TI8//rjH7aFmvvxsDx48qGnTpkmSevbs6XTu5ptv9ixg1FltP/NevXrpr3/9q66//nrFxsYqPj5e//znPxUZGVnPkaMikkCEnfHjx2v8+PH+DgM+snz5cn+HAC9q1aqVTNP0dxjwgtGjR2v06NH+DgMVMByMgNKkSRNJZTX9TmeapqOcQPl1CB58tqGLzzb88JmHBpJABJROnTpJKhsCOt2RI0dUXFyslJSUOg0Xwj/4bEMXn2344TMPDSSBCCgDBw6UJKdVZOXKjw0ePLheY4J38NmGLj7b8MNnHhpIAhFQ+vbtq65du+q9995TTk6O07mVK1cqIiJCaWlpfooOdcFnG7r4bMMPn3loIAlEQDEMQ0uWLJFpmho/frxycnJkmqaWLl2qFStWaMaMGerWrZu/w4QH+GxDF59t+OEzDxF+2acEYeWLL74wW7RoYbZo0cKMiooyJZnNmjUzW7RoYd53332Vvmb37t3miBEjzKSkJLNZs2Zm9+7dzVdeeaWeI0dN+GxDF59t+OEzDz+GabL2HgAAINwwHAwAABCGSAIBAADCEEkgAABAGCIJBAAACEMkgQAAAGGIJBAAACAMkQQCAACEIZJAAACAMEQSCAAAEIZIAgEAAMIQSSCAsHbeeeepefPmMgxD0dHRslgslT5iY2M1a9Yst9o0DEORkZGO1z799NOSpKKiIlksFsf9DMPQ6tWra2xv+/btjustFosuvvjiWr/PQYMGqUmTJjIMQ1FRUbJYLHrrrbdcrluyZIksFosaNGigJk2aaMSIEZKk1q1by2KxKDExUYZhuP29ABC42DsYQNjbt2+f2rdvr379+unjjz+u9Jpx48apXbt2biU/hmEoJSVF+/btq/Z+ktStWzd99dVXMgyjyvauvfZa/eMf/5Ak1eVXdkZGhrp06aL4+HgdPnxYjRs3rvS6I0eOqE2bNsrIyFCHDh2czi1dulTjx4/XzJkzSQSBIEdPIAD4yUUXXaSvv/7akeBVZvv27dqyZYssFkud79e5c2ddcsklysvL08qVK6u87pVXXtGll17qkgACCC0kgQDghpdfflmPPPKIV9t8+OGHJUmzZ8+usodv9uzZeuCBBxQTE+OVe95+++2SpJdeeqnKa1566SXHdQBCF0kgAFRj1qxZGjdunCIiIhQR4d1fmddee60uvPDCKnsDt2/fri+++EJ33HFHte3k5uZq6tSpOvvss3XGGWfozDPP1NChQ/XRRx+5XDt69GjFx8fryy+/1M6dO13Of/755zp8+LBjLiCA0EUSCAB+YhhGtb2Bs2fP1pQpUxQbG1tlG7m5uerTp49WrFihV199VcePH9ePP/6oVq1aafDgwVqxYoXT9Y0bN9aoUaMkSS+++KJLey+99JLGjBmjhg0b1vXtAQhwJIEA8Kt///vfLquCFy5c6NN7Xn/99Tr//PNdegO3b9+uzz//XHfddVe1r58xY4b+85//6Mknn9Qll1wiSUpMTNTzzz+v5ORk3XvvvSooKHB6TflQ76uvviqbzeY4npeXp9dff52hYCBMkAQCwK969+6trKwsp8eUKVN8ek/DMDRjxgxJzr2Bs2fP1n333ae4uLgqX2uaplasWKGIiAgNHTrU6Vx0dLQuvvhiHTt2TJ999pnTuT59+ujcc8/VsWPHnErUvPHGGzr33HPVrVs377w5AAGNJBAA/GzUqFHq1KmTozdw+/bt+uyzz/SHP/yh2tcdOXJEx48fl2maOvvss116MTdu3Kj4+HgdOnTI5bUTJkyQ5DwkzIIQILw08HcAABDI6qMWXkREhGbMmKExY8Zo9uzZatu2re677z41atTIrddHR0crKyurVve87bbbNGPGDK1fv16ZmZkqLCzUV199pbVr13ryFgAEIXoCASAA3HjjjTr33HP19ddfa9OmTbr77rtrfE3z5s115plnqqioSD///LPL+by8PKWnpysnJ8flnMVi0ZVXXqnS0lK9/PLLeumll3T99dcrMTHRK+8HQOAjCQQAN8yZM8enQ6XlvYGS9H//939V7uZRkWEYuuWWWyRJr7/+usv5l156STfeeGOVNQbL38+SJUu0fPlyTZw40dPwAQQhkkAAcENpaansdrtP73HrrbequLjYkQy6Y+7cueratatmz56t9PR0SWWxvvXWW5o+fbqeeOKJKsu9DBs2TC1atND+/fvVuHFjXXbZZV55HwCCA0kggLBmsVh03nnnSZI+/fRTNWzYsNLHvHnzvHK/8847Tz169HDce9CgQU7nGzRwnqo9fvx4WSwW7d+/v9LXNG7cWJs2bdJdd92ltLQ0nXnmmWrXrp2ef/55rVq1SrfddluVsTRo0MBxfsKECdXuXwwg9BhmXXYjBwC4MAxDKSkp2rdvn79D8bqlS5dq/PjxmjlzZr0smgHgO/QEAgAAhCFKxACAl8XHx+v48eOyWCySpD/+8Y+aPHmyf4Oqo9atW6ukpEQlJSWKj49XdHS0v0MCUEcMBwMAAIQhhoMBAADCEEkgAABAGCIJBAAACEMkgQAAAGGIJBAAACAMkQQCAACEIZJAAACAMEQSCAAAEIZIAgEAAMLQ/wN/u+qaU2UpEQAAAABJRU5ErkJggg==",
      "text/plain": [
       "<Figure size 700x700 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "fig = plt.figure(figsize=(7,7))\n",
    "plt.loglog(*stair_step(eds.src_group_struct, gamma), figure=fig) # original\n",
    "plt.loglog(*stair_step(eds.dst_group_struct, gamma_c), figure=fig) # new group structure\n",
    "plt.xlabel('E [MeV]')\n",
    "plt.ylabel('Cross Section [barns]')\n",
    "plt.legend(('original', 'rediscretized'))"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Simple Data Source\n",
    "\n",
    "This interface is independent of where the data came from. As it should be!"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "True\n"
     ]
    }
   ],
   "source": [
    "sds = SimpleDataSource(dst_group_struct=dst_e_g)\n",
    "print(sds.exists)\n",
    "rx = sds.reaction('U233', 'absorption') # cross section data\n",
    "rxc = sds.discretize('U233', 'absorption') # discretization of data"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<matplotlib.legend.Legend at 0x7fa02ce21e50>"
      ]
     },
     "execution_count": 7,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAnYAAAJnCAYAAAAa3h7HAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjcuMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/bCgiHAAAACXBIWXMAAA9hAAAPYQGoP6dpAACOQ0lEQVR4nOzdd3gUZcPF4d9sKgkplBRK6L23oCICUgS7ICCClCCKiIqv9cOKBXvXgD0BRUQpdkFBpAhI6L230HtCSN+d74995RUpJpvdzGZz7uvK5WRnMnMSRU6enXkewzRNExEREREp8WxWBxARERER91CxExEREfERKnYiIiIiPkLFTkRERMRHqNiJiIiI+AgVOxEREREfoWInIiIi4iNU7ERERER8hL/VAUoih8PB/v37CQsLwzAMq+OIiIiIDzNNk1OnTlG5cmVstouPyanYuWD//v3ExcVZHUNERERKkdTUVKpWrXrRY1TsXBAWFgY4f8Dh4eEWpxERERFflp6eTlxc3Jn+cTEqdi746+3X8PBwFTsREREpFgW5/UsPT4iIiIj4CBU7ERERER+hYiciIiLiI1TsRERERHyEil0hJCYm0qhRI+Lj462OIiIiInIOwzRN0+oQJU16ejoRERGkpaXpqVgRkUKw2+3k5eVZHUPEUn5+fgQEBBT4+ML0Dk13IiIiHmeaJgcPHiQtLQ2NJ4hAUFAQFStWdPsAkYqdiIh4XFpaGidPniQqKorQ0FAtxyillmma5OXlkZaWxr59+wDcWu5U7ERExKNM0+Tw4cOEh4dTsWJFq+OIWK5MmTKEhYWxd+9ejh496tZip4cnRETEo+x2O3a7Xfcki/yNYRhERESQk5Pj1vtOVexERMSj8vPzAfD315tEIn/31wMUdrvdbedUsRMRkWKh++pEzuaJPxMqdiIiIiI+QsVORERExEeo2ImIiIj4CBU7ERGREiYnJ4fGjRvTtWvXIp9r7dq1VKxYkWeeecYNyQpm/fr1xMbGUrZsWQzD4Pfffy+2a/s6FTsREZESxm63c/LkSY4ePVrkc2VlZXHq1ClOnDjhhmQF07hxYw4ePMhDDz1UbNcsLfTsuYiISAkTEhLCrl27sNmKPj7Ttm1b0tLSCA4OdkMysZpG7AohMTGRRo0aER8fb3UUEREp5QICAvDz83PLuVTqfIeKXSGMHDmSDRs2kJKS4tHr5OTb2Xgg3aPXEBGxmmmaZObme/2HaZpF/l7z8vJ49dVXad68OdHR0URFRdG+fXumTJly1nHPPvsssbGx+Pn5UaNGDXbs2EGvXr2Ii4vDMAwMw2DmzJnExsZSpkwZDMNg165dZ53DbrczduxYateuTWRkJLVq1eK+++7ju+++wzAMypYtS2xsLJs3b+app54663p/mT179lnXWLduHffeey+1a9cmPDyc9u3b8+eff57zfa5YsYIRI0bQsGFDKlWqREREBO3atTvn+xTP0VuxXiY9O487Jixjw4F0pt7VjvqxYVZHEhHxiKw8O42emmV1jH+14dnuhAS6/tdlXl4eV199NUuWLGHKlClce+215OXlkZiYSL9+/VixYgUvv/wyAE899RRPPfUUNWrUICMjgxEjRvDGG2/QuHFjfvjhB66//np69OjBwYMHGTJkCBMmTDjnekOGDOHzzz/nrbfeYuTIkTgcDpKSkhg5ciQADz30EGPGjAGcRfLZZ589q9QBdO3a9axrjBo1iieffJJ33nmHgwcP0r17d7p27cqOHTuIioo683Wffvop33zzDT/88AOtW7cmJyeH1157jX79+nH8+HFGjBjh8s9RCkYjdl4m0M9GvsPkVHY+CUlLOZSebXUkEREpgnfffZc5c+Zw7733cu211wLOt1Hvv/9+unTpwiuvvMLChQvP+bpjx47x2GOP0bhxYwCuvvpq3n333Ytea+7cuXz++edcffXVjBo1Cn9/fwIDAxk+fDgdOnRw+Xvo3r07nTp1wjAMKlWqxMiRI8nIyODnn38+67iqVavy3HPP0bp1awCCgoJ4/PHHadOmDc8++6zL15eC04idlwkO8OPjQW24efwidhw9zZCkFL4afilhwQFWRxMRcasyAX5seLa71TH+VZmAot3H9tlnnwFw8803n7Ovd+/ezJkzh4kTJ9K+ffuz9gUGBp5Vxvz8/Ljnnnsueq1p06YBzhL4T927d+eLL74odH7gnFL41wjf3r17z3r9//7v/8779Q0bNmTZsmUcPnyY6OholzJIwajYeaFyoYFMGNqWnuP+YOOBdO6etIJPh8QT4KcBVhHxHYZhFOktzpJi8+bNgHM065+qVKly1jF/FxMTU+i1RLdt23bBa1WuXLlQ5/q7f5axoKAgAHJzc896/fjx47z33nt8//337Nu3D4fDAUBa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2rVrExkZSb169XjyySfJzc0959hiZ0qhpaWlmYCZlpZmdZRCOZaRY3Z6da5Z/dEfzGvenm+eys6zOpKIlAJZWVnmhg0bzKysrLN3OBymmZPh/R8OR5F/BoMHDzYBs0OHDub3339v2u12MzU11YyMjDTnzp1rPvXUUyZgvvrqq2Z2draZn59vTp061SxTpox59dVXm3a7/cy5Vq5caZYtW9Zs3ry5uX37dtM0TXPHjh1m586dzerVq5vn+6s9KSnJBMykpKQzrx0+fNgsV66c2b9//zN/nx07dszs37//OeeYNWuWGRwcbPbs2dM8cuSIaZqmeeDAAfPGG280AXPu3Llnjt25c6cJmE2aNDH79u1rHj161DRN03zwwQfNjh07mqZpmnv27DGrVq1qNm3a1NywYcOZ811zzTVmUFDQWef7+89v586d5/35Pv300+fkePrpp82nn376rONOnTplNmjQwPTz8zvr2MLmue2220zAfOutt8y8vDwzJyfHfP/9983mzZubwDnXvZAL/tn4h8L0Dt1jV4qUDw0kOSGeXuMWsX5/OiMnreDjwW0I8NPArYhYIC8TXqhsdYp/99h+CAx1y6k6d+7MddddB0DVqlX56KOPCAgI4Nlnn+Xaa6/loYceOnPszTffzJIlS3jttdeYOnUqffv2BWDUqFFkZGTw4YcfUqtWLQBq1qxJYmIijRs3LnCWuXPncuLECW655RbCw8MBKF++PO+88w7Lly8/c1xWVhaDBg0iODiYiRMnUrZsWQBiY2P5/PPPiY6OPu/5U1NT+eOPP86c+7777jtz3pEjR7J3715mzJhBw4YNz5xvwoQJxMXFcffdd7Nhw4YCfy/n06RJk3NeGzZsGJs2beKll146a/SwMHnmzp3L559/ztVXX82oUaPOnGP48OHMnz+f1atXFyl3Uelv9FKmeoVQPhkST3CAjXlbjvDEjHWa405EpJh069btrM979+7N1KlTAbj22mvPOf6yyy4D4LvvvgPgyJEjzJ8/nwoVKtC2bduzjm3QoAHVq1cvcJYaNWoA8MQTTzBnzhwcDgcAFSpUYNOmTWeO++WXXzh06BBXXnnlmVL3l7JlyzJ79myaNWt2zvnbtm17ptQBVKtWjZ49e3LixAl+/PFHYmJiznk7tGLFitStW5eNGzeybdu2An8v59O7d2969+595vN33nmHKVOmcMMNN/DII4+ceb2weaZNmwbA1Vdffc41u3fvXqTM7qARu1KoRVwk797aiuGfLWPKslQqR5ZhVNe6VscSkdImIMQ5GubtAkLcdqrY2NhzXtu8eTMAjz32GM8888xZ++x2O6GhoRw+fBiA7du3A1ClSpXznr9y5crs3LmzQFnatm3LK6+8wpgxY+jatSvR0dH06NGD/v37c9VVV52ZD++vfHFxcec9z4WmWDnf9wqwdetWHA4Hx44dO+8xWVlZhIaGsnfvXurUqVOg7+Xf/Pnnnzz00EPUrl2bCRMmnDXXX2Hz/FXwqlates6xlStbPwKtYldKdWsUwzM3NObJb9fz5uwtVI4Mpk+b8/+hFRHxCMNw21ucJYXNduE3ysaNG8ett9560a//q5BcaD66801OfDEPP/www4cPZ8aMGXzzzTdMmTKFiRMn0rVrV3744YeznqQt7Bx4F/teAWrVqnWmNHrSsWPH6NOnD35+fkydOpXIyMgi5bnYv4PC/vw9QW/FlmIDL6vBXR1rAzB6+lrmbzlicSIRkdKnQYMGgPOetPNJSUk589Zo7drO/2cfOHDgvLfR7N9f8BFQ0zRxOByEh4czePBgZsyYwd69e7n22muZPXs2kydPPivf3r17z3ueQ4cOkZaWVuDr1q1bF5vNxr59+877PRw7dozZs2e75QlTh8PBgAEDSE1NJTExkRYtWhQ5z1+jiOf7WRfm5+8pKnaFkJiYSKNGjYiPj7c6its80r0+NzSvTL7D5O5JK9iwP93qSCIipcrAgQMxDOPMlB5/d/jwYa644grWrl0LOO/5uvLKK0lPT2fu3LlnHbtly5YLrsxwPhMmTOCaa64567WKFSty5513AnD8+HEArrrqKmJjY888bPF3R44cIS4ujl9//bXA1y1XrhzXX389p0+f5ocffjhn/9ixYxk1ahSBgYFnXgsNdY7s/jX1y8KFCxk7duy/Xuu5555j1qxZDB06lKFDh56176+SV9g8ffr0AeCbb74559hZs2b9ayZPU7ErhJEjR7JhwwZSUlKsjuI2NpvBq32acWmt8mTk5JOQvJT9J7OsjiUiUmq0bNmSMWPGsGLFCkaPHn1mTritW7fSs2dPOnbsSM+ePc8c//bbbxMWFsYDDzxw5n66Xbt2MWzYMMqXL1+oa8+ePZvPPvvszFJchw8f5sMPP6Rs2bL06tULgODgYCZMmIDD4WDYsGEcO3YMcI7g9e/fn0svvZSbbrqpUNd97733iIuL4/7772fZsmWAs7S9//77vP/++7z99ttnHf/XwxmrV6/GNE3Gjx/PihUrLnqNX3/9lWeffZYWLVqQmJh4zv6/P71amDwdOnRg8ODBLFiwgHfeeYf8/Hzy8vL4+OOPmT9/fqF+Dh5RoIlW5CwldR67izmZmWt2ff13s/qjP5jd3vjdPJmZa3UkEfERBZ2ryxetWrXKjImJMYODg03ArFixohkTE3Pe+dhmzJhhduzY0SxfvrxZuXJls3HjxubYsWPN06dPn3Ps6tWrzauvvtoMCwszK1WqZF522WXmrFmzzI4dO5qAGRMTYw4bNsxMS0szY2JizPDwcBMww8PDzZiYGDM7O9s8cOCAOXbsWPOyyy4zq1SpYsbGxprVq1c3Bw4ceGYut39+L3369DFjY2PNmJgYs06dOuajjz561t+Ft912m1mxYkUTMIODg82YmBhz5MiR5/3ZHDp0yLzvvvvMGjVqmFFRUWa1atXMG264wVyyZMk5x2ZlZZmDBw82o6OjzdjYWPPKK680t23bZq5bt86MiYkxQ0NDTcAsV66c2bRpU9M0TbNNmzYmYPr7+5tBQUHnfPyzAhUmT35+vvnCCy+YtWrVMiMiIsyaNWua9957r/ndd9+ZgBkaGmrGxMSYmzZtOu/3/vfvy93z2BmmqbkuCis9PZ2IiAjS0tLOepS7pNt3MoueiX9w+FQOl9Yqz4ShbQny97M6loiUcNnZ2ezcuZOaNWsSHBxsdRwRr1HQPxuF6R16K1bOqBJZhqSEeEID/Viy4ziPTF2Dw6HeLyIiUlKo2MlZGleOYPxtrfG3GXy7aj+v/uL5R9FFRETEPVTs5Bwd6kXxYq+mAIz/fTufL9ltcSIREREpCBU7Oa8+beK4/7+rUTz17TpmbzhkcSIRERH5Nyp2ckGjutSlb5uqOEy4d/JKVqWetDqSiIiIXISKnVyQYRiM7dmUDvWiyMqzc3tyCruPnbY6loiIiFyAip1cVICfjXEDWtGoUjjHTucyJCmF46eLvsyLiIiIuJ+KnfyrskH+JCXEUyWyDDuPnmbYhBSy8+xWxxKREkbTpoqczRN/JlTspEBiwoNJTognPNifFXtOcv+Xq7BrjjsRKQB/f38A8vPzLU4i4l3+WvvWz899iwGo2EmB1Y0J48NBbQj0szFz/UGe/3GD1ZFEpATw8/PDz8+P9PR0q6OIeA3TNElLSyMoKIiAgAC3ndffbWeSUuHSWhV4rW9z7pu8kqQ/dlElsgzDrqhldSwR8WKGYRAdHc2BAwcICgoiNDQUwzCsjiViCdM0ycvLIy0tjYyMDKpUqeLW86vYSaHd0Lwy+09m8dLPm3j+x41UiijDtc0qWR1LRLxYREQEWVlZHD16lCNHjlgdR8RyQUFBVKlSxe1rzqvYiUuGd6jFvhNZfLZkN//5ahXR4UHE1yhvdSwR8VKGYVCpUiWio6PP3FckUlr5+fm59e3Xv1OxE5cYhsGYGxpzMD2bXzccYtiEZUwb0Y460WWtjiYiXuyv++1ExDP08IS4zM9m8E6/lrSIiyQtK48hSUs5fCrb6lgiIiKlloqdFEmZQD8+GdyG6hVC2Hsii9uTl3E6R1MaiIiIWEHFToqsQtkgkhPaUj40kLX70rjnixXk2x1WxxIRESl1VOzELWpWDOXjwW0I8rcxd/MRnvx2nWaZFxERKWYqduI2raqV4+1+LTEMmLw0lcS526yOJCIiUqqo2Ilb9WgSy5jrGwPw2i9bmL5ir8WJRERESg8Vu0JITEykUaNGxMfHWx3Fqw1uV4M7OzhXo3hk6hr+2HbU4kQiIiKlg2HqRqhCS09PJyIigrS0NLfPGO0rHA6T+75cyQ9rDhAW5M/XIy6jQax+ViIiIoVVmN6hETvxCJvN4LU+zWlbszyncvIZ8mkKB9KyrI4lIiLi01TsxGOCA/z4cGBrakeFcjA9m4SkFNKztZSQiIiIp6jYiUdFhgSSnNCWqLAgNh08xYjPl5ObrznuREREPEHFTjwurnwISUPiCQn0449tx/i/aWs0x52IiIgHqNhJsWhSJYJxA1rhZzOYvnIfr/+yxepIIiIiPkfFTopNp/rRvNCzCQDvzd3GF3/usTiRiIiIb1Gxk2J1S3w17utcB4Anv13H3E2HLU4kIiLiO1TspNj9p1s9bm5VFbvD5O5JK1iz96TVkURERHyCip0UO8MweLFXU9rXqUhWnp2hySmkHs+0OpaIiEiJp2Inlgj0tzH+tlY0iA3jaEYug5OWcuJ0rtWxRERESjQVO7FMWHAAyQltqRQRzI4jp7lj4jKy8+xWxxIRESmxVOzEUrERwSQntCUs2J9lu0/w4FercTg0x52IiIgrVOzEcvVjw/hgYGsC/Ax+XHuAF37aaHUkERGREknFTrxCu9oVebV3cwA+XriTTxfutDiRiIhIyaNiJ17jppZVeLh7fQCe+3EDP689YHEiERGRkkXFTrzK3Z1qM+CSapgm3D9lFct3H7c6koiISImhYidexTAMnrmhMV0aRJOT72DYhGXsOJJhdSwREZESQcVOvI6/n413+7ekedUITmTmMSQphaMZOVbHEhER8XoqduKVQgL9+XhwPHHly7DneCa3J6eQmZtvdSwRERGvpmInXisqLIjkhLZEhgSwem8a936xkny7w+pYIiIiXkvFTrxa7aiyfDyoDYH+NuZsOszT363HNDWBsYiIyPmo2InXa1OjPG/f0gLDgEl/7mH8vO1WRxIREfFKKnZSIlzdtBJPXtsIgFdmbubbVfssTiQiIuJ9VOykxBjavia3t68JwENfr2bR9qMWJxIREfEuKnZSojx+TUOuaRpLnt1k+GfL2XzwlNWRREREvIaKnZQoNpvBG31b0KZ6OU5l55OQtJSDadlWxxIREfEKKnZS4gQH+PHRoDbUigplf1o2Q5KWcio7z+pYIiIillOxkxKpXGggExLaUrFsIJsOnuLuSSvI0xx3IiJSyqnYSYkVVz6ET4fEUybAjwVbj/J/09ZqjjsRESnVVOykRGtWNZLEAS2xGTBtxV7enL3V6kgiIiKWUbGTEq9zgxiev6kpAO/M2cqUlD0WJxIREbGGip34hP6XVGPklbUBeGzGOn7ffNjiRCIiIsVPxU58xkNX1adnyyrYHSZ3T1rBun1pVkcSEREpVip2hZCYmEijRo2Ij4+3Ooqch2EYvHxzMy6vU4HMXDsJySmkHs+0OpaIiEixMUw9Rlho6enpREREkJaWRnh4uNVx5B/Ss/Po+/5iNh08RZ3osky7qx0RIQFWxxIREXFJYXqHRuzE54QHB5CUEE9seDDbDmdwx2fLyMm3Wx1LRETE41TsxCdViihDUkI8YUH+LN15nAe/Wo3DocFpERHxbSp24rMaVgrn/YGt8bcZ/LDmAC/P3GR1JBEREY9SsROfdnmdirx8czMAPpi/gwmLdlkbSERExINU7MTn3dy6Kg9dVQ+AMd+vZ9b6gxYnEhER8QwVOykVRl5Zh1vbxmGacN/klazYc8LqSCIiIm6nYielgmEYPHdjE66sH0VOvoNhE5ax6+hpq2OJiIi4lYqdlBr+fjbe69+KplUiOH46l8FJSzmWkWN1LBEREbdRsZNSJTTIn0+GtKFquTLsPpbJ7ROWkZWrOe5ERMQ3qNhJqRMdFkxyQlsiygSwKvUk9325ErvmuBMRER+gYielUp3osnw8uA2B/jZ+3XCIZ75fj1bXExGRkk7FTkqt+BrlebNvCwwDJi7ezYfzd1gdSUREpEhU7KRUu7ZZJR6/piEAL/68ie9W77c4kYiIiOtU7KTUu719TYa0qwHAQ1+tZsmOY9YGEhERcZGKnZR6hmHw5HWN6N44hly7gzsnLmProVNWxxIRESk0FTsRwM9m8Ha/lrSqFkl6dj5DklI4lJ5tdSwREZFCUbET+a/gAD8+HhxPzYqh7DuZRUJSChk5+VbHEhERKTAVO5G/KR8aSHJCPBVCA9lwIJ27J60gz+6wOpaIiEiBqNiJ/EP1CqF8MiSe4AAb87cc4fEZazXHnYiIlAgqdiLn0SIukvdubYXNgK+W7eWdOdusjiQiIvKvVOzEt9jz4WSqW07VtVEMz9zYBIA3Z2/h62XuOa+IiIinqNiJ7zi0Ad6/HL7o6yx4bjDw0urc1bE2AKOnr2X+liNuOa+IiIgnqNiJ7wiLhVMH4fAGWDnRbad9pHt9bmxRmXyHyYjPl7N+f5rbzi0iIuJOKnbiO0LKw5WPObd/GwvZ7ilgNpvBK72bcWmt8pzOtZOQlMK+k1luObeIiIg7qdiJb2kzFCrWg8yjMP81t502yN+PDwa2oV5MWQ6fyiEhaSlpWXluO7+IiIg7qNiJb/ELgKvGOreXjIdj29126ogyASQltCUmPIgthzIY/tkycvLtbju/iIhIUanYie+p2w1qdwFHHvz6lFtPXSWyDJ8OiSc00I8lO47zyNQ1OBya405ERLyDip34HsOA7mPB8INNP8DOBW49fePKEYy/rTX+NoNvV+3n1V82u/X8IiIirlKxE98U3RDaJDi3Z40Gh3vfMu1QL4oXezUFYPzv2/lsyW63nl9ERMQVKnbiuzo9BkERcHAtrPrC7afv0yaO/3StB8DT367j1w2H3H4NERGRwlCxE98VWgE6PuLcnvMs5Jxy+yXu61KHW9rE4TDh3skrWJV60u3XEBERKSgVO/Ftbe+E8rXg9GFY+KbbT28YBs/3bEKHelFk5zm4PTmF3cdOu/06IiIiBaFiJ77NPxCuet65veg9OOH+e+EC/GyMG9CKxpXDOXY6lyFJKRw/nev264iIiPwbFTvxffWvgRpXgD0HZo/xyCXKBvmTNCSeKpFl2Hn0NMMmpJCdpznuRESkeKnYie8zDOjxImDA+umwZ4lHLhMdHkxyQjzhwf6s2HOSUV+uxK457kREpBip2EnpENsUWg10bs8cDQ6HRy5TNyaMjwa1IdDPxqz1h3juhw2YpsqdiIgUDxU7KT06PwmBYbB/Baz9ymOXuaRWBV7r2xyA5EW7+GThTo9dS0RE5O9U7KT0KBsNHR50bs8eA7mee3r1huaVGX11AwCe/3EjP6454LFriYiI/EXFTkqXS0ZAZDU4dQD+eMejl7qzQy0GXVYdgP98tYqUXcc9ej0REREVOyldAoKh23PO7T/ehrR9HruUYRg8fX1jujWKITffwbAJy9h2OMNj1xMREVGxk9Kn0Y1QrR3kZ8GcZzx6KT+bwTv9WtIiLpK0rDwGf7qUw6eyPXpNEREpvVTspPQxDOjxAmDAmimwd7lHL1cm0I9PBrehRoUQ9p3MYmhyCqdz8j16TRERKZ1U7KR0qtwSmt/q3J75f+DhKUkqlA0iOaEt5UMDWbcvnXu+WEG+3TNTroiISOmlYielV5enICAE9i6FddM8frkaFUP5eHAbggNszN18hCe/Xac57kRExK1U7KT0Cq8E7f/j3J49BvKyPH7JVtXK8Xa/lhgGTF6aSuLcbR6/poiIlB4qdlK6XXYPhFeFtFRY/F6xXLJ741jGXN8YgNd+2cK05XuL5boiIuL7VOykdAsMga5jnNsL3oRTB4vlsoPb1WB4h1oAPDptDQu3Hi2W64qIiG8zzALe5DN//vwiXcjPz4/LL7+8SOfwFunp6URERJCWlkZ4eLjVcaSoTBM+6QZ7U6DFbXBTYrFc1uEwGTVlFd+v3k/ZIH++vusyGlbSf08iInK2wvSOAhc7m82GYRguhypbtixpaWkuf703UbHzQakp8ElXwIA7f4fKLYrlsjn5dgZ+spSlO48TGx7MjJHtqBRRpliuLSIiJYNHil1ISAi33HKLS4FM0+T777/n2LFjLn29u5imyWeffcaECRMwTZP09HSaN2/Oyy+/TMWKFQt8HhU7HzVtGKz9GqpfDkN+dM53VwzSMvO4+f1FbDucQf2YML4ecRnhwQHFcm0REfF+Hil2lStXZv/+/S6HKurXu0NGRgblypVj4cKFXHLJJeTk5HDNNddgmia//fZbgc+jYuej0vbCu22cK1L0nehcoaKY7D2RSc9xizhyKofL61QgaUhbAv11C6yIiBSudxT4b46izrflDfN1+fn50b9/fy655BIAgoKCGDFiBHPnzuXIkSMWpxPLRVSFdvc6t395EvJziu3SVcuFkDQknpBAP/7YdoxHp63xij8zIiJSshS42H333XdFulBRv94dypQpw4QJE856LTg4GIDsbK3fKcDloyCsEpzcDUvGF+ulm1SJYNyAVvjZDGas3Mdrv2wu1uuLiEjJV+BiFx8fX6QLufL169ato127dhiGwa5duy567KZNm+jduzexsbFER0cTHx/PpEmT/vUaixcv5tJLLyUuLq7Q+cQHBZV1rkgBMP81yDhcrJfvVD+aF3s2BSBx7na++HNPsV5fRERKNrffxLN7925WrVpVpHNkZ2fz+OOP07FjR7Zu3fqvx69cuZK2bdtit9vZtGkThw4dYuTIkQwaNIgxY8Zc8OuOHTvGJ598wrvvvlukvOJjmvWDSi0g9xTMHVvsl+8bH8d9XeoC8MQ3a/lt06FizyAiIiWTy8Vu3rx5dO7cmSFDhpx57amnnqJWrVq0bt2a1q1bc/LkSZfOff/997N+/XpWr15N48aNL3qsaZokJCQAkJycTGRkJIZhMGTIEAYMGMBzzz133qJpt9sZMGAAzz//PG3atHEpp/gomw16vOjcXjERDq4r9gj/6VqX3q2r4jBh5KSVrNl7stgziIhIyeNysfv88885fvw4t956K+B823Ts2LHUqFGD+++/nxMnTvD666+7dO7Ro0fzzTffULVq1X89dsGCBaxevZprrrmGiIiIs/bdeuutOBwOEhPPnXB2+PDhXHHFFQwbNsyljOLjqreDRjeB6YBZjzknMS5GhmHwYq+mXFG3Ill5doYmp5B6PLNYM4iISMnjcrFbtGgRX3/9Nd27dwdgwoQJGIbBDz/8wOuvv87333/PtGnTXDp39erVC3zsnDlzAGjduvU5+/567ddffz3r9Ycffpjw8HAef/xxAGbPns2OHTsueI2cnBzS09PP+pBSoNsz4BcIO+fBlpnFfvkAPxvjBrSiYaVwjmbkMjhpKSdO5xZ7DhERKTlcLnYnT56kbt26Zz7//vvvadeu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",
      "text/plain": [
       "<Figure size 700x700 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "fig = plt.figure(figsize=(7,7))\n",
    "plt.loglog(sds.src_group_struct[:-1], rx, figure=fig)\n",
    "plt.loglog(sds.dst_group_struct[:-1], rxc, figure=fig)\n",
    "plt.xlabel('E [MeV]')\n",
    "plt.ylabel('Cross Section [barns]')\n",
    "plt.legend(('original', 'rediscretized'))"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Since data sources are caches, subsequent requests for \n",
    "the same data are very fast! "
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "CPU times: user 12.9 ms, sys: 372 µs, total: 13.3 ms\n",
      "Wall time: 12.1 ms\n",
      "CPU times: user 15 µs, sys: 6 µs, total: 21 µs\n",
      "Wall time: 22.4 µs\n",
      "CPU times: user 8 µs, sys: 3 µs, total: 11 µs\n",
      "Wall time: 13.4 µs\n"
     ]
    },
    {
     "data": {
      "text/plain": [
       "<function print(*args, sep=' ', end='\\n', file=None, flush=False)>"
      ]
     },
     "execution_count": 8,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "%time sds.reaction('U238', 'fiss')\n",
    "print\n",
    "%time sds.reaction('U238', 'fission')\n",
    "print\n",
    "%time sds.reaction('U238', 'fiss')\n",
    "print"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Cross Section Caching\n",
    "\n",
    "Now suppose you want to discretize data and retrieve cross sections from multiple sources, prioritizing data availability, you can utilize the `XSCache` class. \n",
    "\n",
    "This class functions similarly to a dictionary, where the keys are tuples in the form of `(nuclide, rx)` or `(nuclide, rx, temp)`. These tuples represent the specific nuclide, reaction ID, and temperature for which you require information.\n",
    "\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "metadata": {},
   "outputs": [],
   "source": [
    "from pyne.xs.cache import XSCache"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 10,
   "metadata": {},
   "outputs": [],
   "source": [
    "xscache = XSCache(group_struct=dst_e_g,\n",
    "                  data_sources=[EAFDataSource, SimpleDataSource, NullDataSource])\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 11,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "array([  1.94057774,   1.71230641,   2.02444418,   3.24912017,\n",
       "         7.42318537,  20.15919429,  51.8621376 ,  77.11455565,\n",
       "        46.99610069, 155.69532222])"
      ]
     },
     "execution_count": 11,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "xscache['U235', 'abs']"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "If you request a cross-section that is not present in the cache (doesn't exist), the system will return an array containing 0 values."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 12,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "array([0., 0., 0., 0., 0., 0., 0., 0., 0., 0.])"
      ]
     },
     "execution_count": 12,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "xscache['H42', 'gamma']"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Reading ACE Files\n",
    "\n",
    "To load data from an ACE file, one needs to simply initialize an instance of the `Library` class specifying the path to the `Library` file:\n",
    "\n",
    "    from pyne import ace\n",
    "    libFile = ace.Library('endf70a')\n",
    "    libFile.read()\n",
    "    "
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Reading ENDF Files\n",
    "Similarly, ENDF file reading and cross-section discretization is supported."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 13,
   "metadata": {},
   "outputs": [],
   "source": [
    "import requests\n",
    "from pyne.xs.data_source import ENDFDataSource\n",
    "from pyne import nucname\n",
    "from os.path import isfile\n",
    "\n",
    "# Download the data file if it isn't there\n",
    "if not isfile(\"Ni59.txt\"):\n",
    "    r = requests.get(\"http://t2.lanl.gov/nis/data/data/ENDFB-VII.1-neutron/Ni/59\")\n",
    "    with open(\"Ni59.txt\", \"wb\") as outfile:\n",
    "        outfile.write(r.content)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 14,
   "metadata": {},
   "outputs": [],
   "source": [
    "endfds = ENDFDataSource(\"Ni59.txt\")\n",
    "\n",
    "# get the nonelastic reaction data for Ni-59\n",
    "nonelastic_rx = endfds.reaction(\"Ni59\", \"nonelastic\")\n",
    "\n",
    "# set the group structure and re-discretize\n",
    "nonelastic_rx['dst_group_struct'] = np.logspace(7, -5, 33)\n",
    "nonelastic_c = endfds.discretize(\"Ni59\", \"nonelastic\")"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Now let's plot it!!\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 15,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<matplotlib.legend.Legend at 0x7fa02cefe390>"
      ]
     },
     "execution_count": 15,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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mjULcrm82jo0Gg169+6NjRs3YsOGDbh8+TJ+++03tGzZEoMHD8bGjRttyjdq1AijR48GALz77rt29a1ZswapqamIiIhw9eMRkY9jEkhEdN33339vNyt4+fLlHr3mww8/jNtuu82uNfDIkSPYv38/pkyZUuP709PT8eOPP+KVV15Bjx49AADR0dF46623EBcXh2eeeQY6nc7mPZau3g0bNkCv11uPl5SUYPPmzewKJgoSTAKJiK7r1asXCgoKbB6zZs3y6DUlSUJ6ejoA29bABQsWYMaMGVAoFNW+VwiBjRs3IiQkBEOHDrU5FxYWhjvvvBNFRUX4z3/+Y3Oud+/e6NChA4qKimyWqPnwww/RoUMHdO3a1T0fjoh8GpNAIiIvGz16NDp16mRtDTxy5Aj+85//4K9//WuN7yssLMTly5chhED79u3tWjH37t2LyMhInD9/3u69EyZMAGDbJcwJIUTBpYG3AyAi8mX1sRZeSEgI0tPTkZqaigULFqB169aYMWMGGjZs6ND7w8LCUFBQUKdrPvnkk0hPT8fu3btx+vRplJaW4vDhw/jss8+c+QhE5IfYEkhE5AMeffRRdOjQAUePHsW+ffswderUWt/TrFkz3HTTTSgrK8Pvv/9ud76kpASZmZkoLi62O6dUKnHffffBZDLhvffew5o1a/Dwww8jOjraLZ+HiHwfk0AiIgcsXLjQo12lltZAAPjb3/5W7W4eFUmShMcffxwAsHnzZrvza9aswaOPPlrtGoOWz7N27VqsX78ekyZNcjZ8IvJDTAKJiBxgMplgNBo9eo0nnngCBoPBmgw6YtGiRejSpQsWLFiAzMxMAOZYt27dirlz52LFihXVLvcyfPhwNG/eHPn5+WjUqBH69u3rls9BRP6BSSARBTWlUolbb70VAPDdd98hIiKiysfixYvdcr1bb70VycnJ1msPGjTI5nyDBrZDtdPS0qBUKpGfn1/lexo1aoR9+/ZhypQpUKlUuOmmm9CmTRu89dZb2LJlC5588slqY2nQoIH1/IQJE2rcv5iIAo8kXNmNnIiI7EiShISEBJw6dcrbobjdunXrkJaWhnnz5tXLpBki8hy2BBIREREFIS4RQ0TkZpGRkbh8+TKUSiUA4O9//zumT5/u3aBc1KpVK5SXl6O8vByRkZEICwvzdkhE5CJ2BxMREREFIXYHExEREQUhJoFEREREQYhJIBEREVEQYhJIREREFISYBBIREREFISaBREREREGISSARERFREGISSERERBSEmAQSERERBaH/B1aRKXljpr0DAAAAAElFTkSuQmCC",
      "text/plain": [
       "<Figure size 700x700 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "fig = plt.figure(figsize=(7,7))\n",
    "\n",
    "# e_int is the array of energy values over which to integrate\n",
    "E_g = nonelastic_rx['e_int']\n",
    "\n",
    "# xs is the array of cross-sections corresponding to e_int\n",
    "nonelastic = nonelastic_rx['xs']\n",
    "\n",
    "# with base group structure\n",
    "plt.loglog(*stair_step(E_g, nonelastic[:-1]), figure=fig) \n",
    "\n",
    "# discretized with new group structure\n",
    "plt.loglog(*stair_step(nonelastic_rx['dst_group_struct'], nonelastic_c), figure=fig) \n",
    "plt.xlabel('E [MeV]')\n",
    "plt.ylabel('Cross Section [barns]')\n",
    "plt.legend(('original', 'rediscretized'))"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Cross Section Channels\n",
    "\n",
    "The `pyne.xs.channels` module in PyNE offers a user-friendly interface for efficiently accessing multigroup cross sections from the cross section cache and collapsing them to match the desired group structure. This module includes various functions, such as:\n",
    "\n",
    "`sigma_f`: Calculates the neutron fission cross section for a nuclide.\n",
    "\n",
    "`sigma_s_gh`: Calculates the neutron scattering kernel for a nuclide.\n",
    "\n",
    "`sigma_s`: Calculates the neutron scattering cross section for a nuclide.\n",
    "\n",
    "`sigma_a_reaction`: Calculates the neutron absorption reaction cross section for a nuclide.\n",
    "\n",
    "`sigma_a`: Calculates the neutron absorption cross section for a nuclide.\n",
    "\n",
    "`sigma_t`: Calculates the total neutron cross section for a nuclide.\n",
    "\n",
    "`chi`: Calculates the neutron fission energy spectrum for a nuclide.\n",
    "\n",
    "`metastable_ratio`: Calculates the ratio between a reaction that leaves the nuclide in a metastable state and the equivalent reaction that leaves the nuclide in the ground state.  \n",
    "\n",
    "Unlike the standard cache view, the functions in the channels module provide extended capabilities. In addition to retrieving cross sections, you can also compute cross sections for materials, fission energy spectra, metastable ratios, and more. This module enhances the flexibility and convenience of accessing and manipulating cross section data in PyNE."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 16,
   "metadata": {},
   "outputs": [],
   "source": [
    "from pyne.xs import channels\n",
    "from pyne.material import Material, from_atom_frac"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 17,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "array([0.21836068, 0.11496041, 0.09857257, 0.09597528, 0.10104627,\n",
       "       0.13585377, 0.22343296, 0.44344517, 0.99609454, 2.38428759])"
      ]
     },
     "execution_count": 17,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "fuel = from_atom_frac({'U235': 0.045, 'U238': 0.955, 'O16': 2.0}, mass=1.0, density=10.7)\n",
    "\n",
    "# the cross section is mapped to fuel with group structure dist_e_g\n",
    "# the default temp is 300K; this uses a group flux.\n",
    "channels.sigma_f(fuel, group_struct=dst_e_g)"
   ]
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3 (ipykernel)",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.11.2"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 1
}
